// (function test() {
//     var a = b = 5;
//     console.log(typeof a);
//     console.log(typeof b);
// })();
// console.log(typeof a);
// console.log(typeof b);
/**
 * 是因为赋值从右向左结合，var a=b=5; 等价于 var a=(b=5);

其中只有a被声明了，b是自动解析为全局变量了。
 */
// 231、下列JavaScript代码执行后，iNum的值是
// var iNum = 0;
// for (var i = 1; i < 10; i++) {
//     if (i % 5 == 0) {
//         continue;
//     }
//     iNum++;
// }
// console.log(iNum)
// 232、输出结果是多少？
//  1）  var a;
// var a;
// var b = a * 0;
// if (b == b) {
//     console.log(b)

//     console.log(b * 2 + "2" - 0 + 4);
// } else {
//     console.log(!b * 2 + "2" - 0 + 4);
// }
// function object number boolean undefined

// 指尖优品的面试题
// var a = 2
// var obj = {
//     a: 1,
//     foo: function() {
//         console.log(this.a)
//     }
// }
// obj.foo()
// foo()
// obj.foo.apply()
// obj.foo.call(this)
// foo.apply(obj)
// foo.call()

// 2.(难)
// var i = 4;
// var data0 = []
// var data1 = []

// function foo() {
//     for (var i = 0; i < 3; i++) {
//         // console.log(i)
//         data0[i] = function() {
//             console.log(i)
//         }
//     }
//     for (let i = 0; i < 3; i++) {
//         data1[i] = function() {
//             console.log(i)
//         }
//     }
// }
// foo()
// for (let i = 0; i < 3; i++) {
//     data0[i]();
//     data1[i]()
// }

// 4(预解析)
// var who = 'globe'

// function foo() {
//     console.log(who)
//     var who = 'local'
//     console.log(who)
// }
// foo()